package com.zhuoyue.biz.core.command.constant;

/**
 * 多彩灯控制命令处理类
 * @author Administrator
 *
 */
public interface DuoCaiDeng0Faa0B02CmdDeal {
	
	/**
	 * 控制类型
	 * @author hualong
	 *
	 */
	interface ControlType{
		/**控制类型-调光*/
		String CONTROL_TYPE_AIMING   = "AIMING_CONTROL";
		
		/**控制类型-调色*/
		String CONTROL_TYPE_COLOR    = "COLOR_CONTROL"; 
		
		/**控制类型-特定模式*/
		String CONTROL_TYPE_MODE     = "MODE_CONTROL";
		
		/**控制类型-关闭*/
		String CONTROL_TYPE_CLOSE    = "CLOSE_CONTROL";
	}
	
	/**
	 * 调光控制
	 * @author hualog
	 */
	interface AimingControl{ 
		/**
		 * 1
		 * 帧头
		 * 固定参数
		 */
		public static String CMD_1 = "2A";
		
		/**
		 * 2
		 * 数据长度
		 * 通过计算得出数据长度
		 * 自命令标识开始至校验和前一位结束
		 * CMD_2
		 */
		
		/**
		 * 3
		 * 命令标识
		 * 写
		 * 固定参数
		 */
		public static String CMD_3 = "02";
		
		/**
		 * 4
		 * 目标地址形式
		 * 节点mac地址
		 * 固定参数
		 */
		public static String CMD_4 = "01";
		
		/**
		 * 5
		 * 网关mac地址
		 * 前端传参
		 * CMD_5
		 */
		
		/**
		 * 6
		 * 节点mac地址
		 * 前端传参
		 * CMD_6
		 */
		
		/**
		 * 7
		 * OD索引
		 * 固定参数
		 */
		public static String CMD_7 = "0FAA";
		
		/**
		 * 8
		 * 可变索引
		 * 固定参数
		 */
		public static String CMD_8 = "FF";
		
		/**
		 * 9
		 * 数据长度
		 * 通过计算获取
		 * 自子索引开始至校验和前一位结束
		 * CMD_9
		 */
		
		/**
		 * 10
		 * 子索引
		 * 固定参数
		 */
		public static String CMD_10 = "1F000000";
		
		/**
		 * 11
		 * 灯光模式
		 * 前端传参
		 * 01-直接
		 * 02-渐渐
		 * 03-延时
		 * CMD_11
		 */
		
		/**
		 * 12
		 * 灯光类型-调光
		 * 固定参数
		 */
		public static String CMD_12 = "02";
		
		/**
		 * 13
		 * 延时时间
		 * 如果灯光模式为直接，该时间无效
		 * CMD_13
		 */
		
		/**
		 * 14
		 * 灯开
		 * 固定参数
		 */
		public static String CMD_14 = "01";
		
		/**
		 * 15
		 * 亮度
		 * 前端传参
		 * CMD_15
		 */
		
		/**
		 * 16
		 * 校验和
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 * CMD_16
		 */
		
		/**
		 * 17
		 * 帧尾
		 * 固定参数
		 */
		public static String CMD_17 = "23";
		
	}
	
	
	/**
	 * 调色控制
	 * @author hualog
	 */
	interface ColorControl{
		
		/**
		 * 1
		 * 帧头
		 * 固定参数
		 */
		public static String CMD_1 = "2A";
		
		/**
		 * 2
		 * 数据长度
		 * 自命令标识开始至校验和前一位结束
		 * 通过计算获取
		 */
		
		/**
		 * 3
		 * 命令标识
		 * 固定参数
		 */
		public static String CMD_3 = "02";
		
		/**
		 * 4
		 * 目标地址形式-节点mac地址
		 * 固定参数
		 */
		public static String CMD_4 = "01";
		
		/**
		 * 5
		 * 网关mac地址
		 * 前端传参
		 */
		
		/**
		 * 6
		 * 节点mac地址
		 * 前端传参
		 */
		
		/**
		 * 7
		 * OD索引
		 * 固定参数
		 */
		public static String CMD_7 = "0FAA";
		
		/**
		 * 8
		 * 可变索引
		 * 固定参数
		 */
		public static String CMD_8 = "FF";
		
		/**
		 * 9
		 * 数据长度
		 * 自子索引开始至校验和前一位结束
		 * 通过计算获取
		 */
		
		/**
		 * 10
		 * 子索引
		 * 固定参数
		 */
		public static String CMD_10 = "7F000000";
		
		/**
		 * 11
		 * 灯光模式
		 * 前端传参
		 */
		
		/**
		 * 12
		 * 灯光类型-调色
		 * 固定参数
		 */
		public static String CMD_12 = "03";
		
		/**
		 * 13
		 * 时间参数
		 * 前端传参
		 */
		
		/**
		 * 14
		 * 灯开
		 * 固定参数
		 */
		public static String CMD_14 = "01";
		
		/**
		 * 15
		 * 灯光颜色值
		 * 红光
		 * 绿光
		 * 蓝光
		 * 前端传参
		 */
		
		/**
		 * 16
		 * 校验和
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 */
		
		/**
		 * 17
		 * 帧尾
		 * 固定参数
		 */
		public static String CMD_17 = "23";
		
	}
	
	
	/**
	 * 特定模式控制
	 * @author hualog
	 *
	 */
	interface ModeControl{
		
		/**
		 * 七彩渐变模式
		 */
		public static String MODE_GRADUAL     = "GRADUAL";
		
		/**
		 * 七彩跳变模式
		 */
		public static String MODE_SALTUS_STEP = "SALTUS_STEP";
		
		/**
		 * 呼吸灯模式
		 */
		public static String MODE_BREATH      = "BREATH";
		
		/**
		 * 1
		 * 帧头
		 * 固定参数
		 */
		public static String CMD_1 = "2A";
		
		/**
		 * 2
		 * 数据长度
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 */
		
		/**
		 * 3
		 * 命令标识-写
		 * 固定参数
		 */
		public static String CMD_3 = "02";
		
		/**
		 * 4
		 * 目标地址形式-节点mac地址
		 * 固定参数
		 */
		public static String CMD_4 = "01";
		
		/**
		 * 5
		 * 网关mac地址
		 * 前端传参
		 */
		
		/**
		 * 6
		 * 节点mac地址
		 * 前端传参
		 */
		
		/**
		 * 7
		 * OD索引
		 * 固定参数
		 */
		public static String CMD_7 = "0FAA";
		
		/**
		 * 8
		 * 可变索引
		 * 固定参数
		 */
		public static String CMD_8 = "FF";
		
		/**
		 * 9
		 * 数据长度
		 * 通过计算获取
		 * 自子索引开始至校验和前一位结束
		 */
		
		/**
		 * 10
		 * 子索引
		 * 根据前端传参判断该值
		 * 0B000000-七彩渐变模式子索引
		 * 0F000000-七彩跳变模式子索引
		 * 7B000000-呼吸灯模式子索引
		 */
		public static String CMD_10_GRADUAL     = "0B000000";
		
		public static String CMD_10_SALTUS_STEP = "0F000000";
		
		public static String CMD_10_BREATH      = "7B000000";
		
		/**
		 * 11
		 * 灯光控制模式
		 * 前端传参
		 */
		
		/**
		 * 12
		 * 校验和
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 */
		
		/**
		 * 13
		 * 帧尾
		 * 固定参数
		 */
		public static String CMD_13 = "23";
		
	}
	
	
	/**
	 * 关灯控制
	 * @author hualog
	 *
	 */
	interface CloseControl{
		
		/**
		 * 1
		 * 帧头
		 * 固定参数
		 */
		public static String CMD_1 = "2A";
		
		/**
		 * 2
		 * 数据长度
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 */
		
		/**
		 * 3
		 * 命令标识-写
		 * 固定参数
		 */
		public static String CMD_3 = "02";
		
		/**
		 * 4
		 * 目标地址形式-节点mac地址
		 * 固定参数
		 */
		public static String CMD_4 = "01";
		
		/**
		 * 5
		 * 网关mac地址
		 * 前端传参
		 */
		
		/**
		 * 6
		 * 设备mac地址
		 * 前端传参
		 */
		
		/**
		 * 7
		 * OD索引
		 * 固定参数
		 */
		public static String CMD_7 = "0FAA";
		
		/**
		 * 8
		 * 可变索引
		 * 固定参数
		 */
		public static String CMD_8 = "FF";
		
		/**
		 * 9
		 * 数据长度
		 * 通过计算获取
		 * 自子索引开始至校验和前一位结束
		 */
		
		/**
		 * 10
		 * 子索引
		 * 固定参数
		 */
		public static String CMD_10 = "09000000";
		
		/**
		 * 11
		 * 灯光模式-直接
		 * 固定参数
		 */
		public static String CMD_11 = "01";
		
		/**
		 * 12
		 * 关灯
		 * 固定参数
		 */
		public static String CMD_12 = "02";
		
		/**
		 * 13
		 * 校验和
		 * 通过计算获取
		 * 自命令标识开始至校验和前一位结束
		 */
		
		/**
		 * 14
		 * 帧尾
		 * 固定参数
		 */
		public static String CMD_14 = "23";
		
	}
	
}
